NAND flash memories are commonly used in various devices, such as mobile phones, personal computers (PCs), laptops and tablet PCs. A typical erasing scheme for a NAND flash memory is block-based. That is, all pages in a memory block are erased even the user only requires to erase few pages. Accordingly, before performing block erasing, the typical erasing scheme needs to write the residual page data into another memory block. After all pages in a memory block are erased, the residual page data are written back to the original memory block. However, such erasing scheme takes much time in garbage collection and much time in wear leveling.